﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp2
{
    class Program
    {
        static void Main(string[] args)
        {//1.第一步：创建数据上下文（增删改查）
            Model1 model = new Model1();
            //2.第二步：属性导航
            var task = model.Task;
            //3.第三步：数据操作

            //3.1查询
            var list = task.Where(p => p.Content.Contains("实现")).ToList();
            foreach (var item in list)
            {
                Console.WriteLine(item.TaskID + "\t" + item.Content);
            }
            //3.2添加
            var t = new Task()//创建对象
            {
                AddTime = DateTime.Now,
                Content = "实现添加功能",
                TaskPriority = 1,
                uid = 1,
                TaskState = 1

            };
            task.Add(t);
            model.SaveChanges();
            //3.3删除
            /*
             1.找到要删除的对象FirstOrDefault
            2.判断查找结果null
            3.!=null Remove()
            4.同步到数据库SaveChanges();
             */
            var d = task.FirstOrDefault(p=>p.TaskID==6);
            if (d!=null) {
                task.Remove(d);
                model.SaveChanges();
            }
            //3.4修改
            /*
            1.找到要删除的对象FirstOrDefault
           2.判断查找结果null
           3.!=null  对属性重新赋值
           4.同步到数据库SaveChanges();
            */
            var u = task.FirstOrDefault(p => p.TaskID == 6);
            if (u != null)
            {
                u.TaskState = 2;
                u.FinishedTime = DateTime.Now;
                
                model.SaveChanges();
            }
            Console.ReadKey();
        }
    }
}
